package org.example.erpapispringweb;



import org.example.erpapispringweb.security.ApiUser;
import org.example.erpapispringweb.security.Token;
import org.example.erpapispringweb.security.TokenException;

import java.util.Optional;

public interface TokenService {
    Token createToken(ApiUser apiUser)throws TokenException;
    default  Optional<ApiUser> getApiUser(Token token){
        return Optional.ofNullable(token).map(Token::getAccessToken).flatMap(this::getApiUser);
    }
    Optional<ApiUser> getApiUser(String tokenValue);
}
